print("Hello world")
x = 12
print(x)
y = 12.3
print(y)
L = [1, 2, 3, 4]
print(L)
D = {"a": 1, "b": 2}
print(D)
print(f"x = {x}, y = {y}")
s = 'hello'
x = len(s)
print(x)
# %代表转换说明符开始
print("The length of %s is %d" % (s, x))

# -z 表示左对齐，z表示宽度
print("Name:%-10s Age:%-8d Height:%-8.2f" % ("Aviad", 25, 1.83))


# 指定占位符（若位数不够则用0填充）
print("Name:%010s Age:%08d Height:%08.2f" % ("Aviad", 25, 1.83))

# 最小字段宽度转换后的字符串
print("Name:%10s Age:%8d Height:%8.2f" % ("Aviad", 25, 1.83))

# 精度确认
print("His height is %f m" % 1.83)
print("His height is %.2f m" % 1.83)


# 字符串格式化
print("The String is %.2s"%("abcd")) # 结果：ab

# 用*从后面的元组中读取字段宽度或精度，第1个参数是精度
print ("His height is %.*f m"%(3,1.83))

'''
转换类型          含义
d,i                 带符号的十进制整数
o                   不带符号的八进制
u                   不带符号的十进制
x                    不带符号的十六进制（小写）
X                   不带符号的十六进制（大写）
e                   科学计数法表示的浮点数（小写）
E                   科学计数法表示的浮点数（大写）
f,F                 十进制浮点数
g                   如果指数大于-4或者小于精度值则和e相同，其他情况和f相同
G                  如果指数大于-4或者小于精度值则和E相同，其他情况和F相同
C                  单字符（接受整数或者单字符字符串）
r                    字符串（使用repr转换任意python对象)
s                   字符串（使用str转换任意python对象）
'''